package com.jt.mapper;

import com.jt.pojo.User;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

@Mapper  //标识持久层,将接口交给spring容器管理  Map<userMapper,JDK代理对象>
//spring容器启动，会扫描Mapper层
public interface UserMapper {

    //指定接口方法 查询demo_user的全部数据
    List<User> findAll();
    User findById(int id);
    List<User> findByNA(User user);

    //参数只有一个
    List<User> findByA(Map<String,Integer> map);
    //原则:mybatis只支持单值传参  将多值封装为单值
    //注解：@Param("key") int minAge(值)
    //将数据封装为Map
    List<User> findByA2(@Param("minAge") int minAge,@Param("maxAge") int maxAge);

    List<User> findLike(String name);


    List<User> findByIn(int[] array);

//    void insert(User user);
    //如果需要返回值，则mybatis自动返回影响的行数
    int insert(User user);


    void delete(int i);


    void updateById(@Param("name") String name,@Param("id") int id);

}
